
package punchdownloader.interfaces;

/**
 * Interface que representa o Atualizador.<br>
 * Responsável por checar atualizações e baixar arquivos.
 * 
 * @author Kennedy
 * 
 * @version 1.0
 * 
 * @since 1.0
 */
public interface Updater {

    /**
     * Checa a versão atual com a versão mais recente para ver se necessita de atualização.
     */
    public void checkVersion();

    /**
     * Faz o download dos arquivos mais recentes do programa.
     * <br>Geralmente chamado depois do <b>checkVersion</b>.
     */
    public void doUpdate();

    /**
     * Instala as atualizações baixadas pelo metodo <b>doUpdate</b>.
     */
    public void installUpdate();
}
